package com.lx.sync.consumer.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import org.springframework.data.annotation.Id;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * 同步状态实体
 */
@Data
@TableName("sync_state")
public class SyncStateEntity {


    @TableId(type = IdType.AUTO)
    private String id;

    /**
     * 同步索引名称
     */
    private String idxName;

    /**
     * 同步开始时间
     */
    @TableField("start_time")
    private Date startTime;

    /**
     * 同步结束时间
     */
    @TableField("end_time")
    private Date endTime;

    /**
     * 本次同步的最早数据时间
     */
    @TableField("earliest_sync_time")
    private Date earliestSyncTime;

    /**
     * 本次同步的最新数据时间
     */
    @TableField("latest_sync_time")
    private Date latestSyncTime;
    /**
     * 本次同步的失败时间
     */
    @TableField("fail_sync_time")
    private Date failSyncTime;

    /**
     * 同步的数据量
     */
    @TableField("sync_count")
    private Long syncCount;

    /**
     * 同步是否成功
     */
    @TableField("state")
    private int state;

    /**
     * 错误信息
     */
    @TableField("error_message")
    private String errorMessage;

    /**
     * 同步类型（FULL/INCREMENTAL）
     */
    @TableField("sync_type")
    private String syncType;

    /**
     * 同步的数据量
     */
    @TableField("sum_count")
    private Integer sumCount;
}
